
const path = require('path'); 
const webpack = require('webpack');

const htmlWebpackPlugin = require('html-webpack-plugin');

const VueLoaderPlugin = require('vue-loader/lib/plugin')





module.exports = {
   
    entry: './src/main.js',
    
    output: {
        path: path.resolve(__dirname, 'dist'), 
        filename: 'bundle.js'
    },
  
    devServer: {
        contentBase: 'src',
        open: true,
        port: 4000,
        hot: true
    },
   
    plugins: [
       
        new webpack.HotModuleReplacementPlugin(),
        new htmlWebpackPlugin({
            template: path.join(__dirname, './src/index.html'), 
            filename: 'index.html' 
        }),
        new VueLoaderPlugin()
    ],
   
    module: {
        rules: [
            { test: /\.css$/, use: ['style-loader', 'css-loader'] },
            { test: /\.less$/, use: ['style-loader', 'css-loader', 'less-loader'] },
            { test: /\.scss$/, use: ['style-loader', 'css-loader', 'sass-loader'] },
            { test: /.(jpg|png|gif|bmp|jpeg)/, use: ['url-loader'] },
            { test: /.(ttf|eot|svg|woff|woff2)/, use: ['url-loader'] },
            { test: /.vue$/, use: ['vue-loader'], exclude: /node_modules/ }
        ]
    },
    resolve:{
        alias:{
            "vue$":"vue/dist/vue.js"
        }
    }
}